<?php
/**
 * View_Auth
 *
 * Класс View_Auth отвечает за вывод информации, связанной с авторизацией
 *
 * @author Дмитрий Кузьма <kouzma.d@gmail.com>
 * @version 1.0
 */
class View_Auth extends View_Base {
	/**
	 * Метод выводит форму регистрации
	 *
	 * @param objUser - объект данных о пользователе
	 */
	public function getRegForm($objUser) {
    
		echo '<div id="signUpPage">';
			echo '<p class="grey">' . Service_Translate::getText('Здездочкой (*) отмечены поля') . '</p>';
	    echo '<h3 class="attention">' . Service_Translate::getText('Пожалуйста, заполняйте поля латинскими буквами.') . '</h3>';
	    $objForm = new Form_ViewForm(array('enctype' => 'multipart/form-data', 'id' => 'signUpForm', 'viewFormType' => 'div', 'errorIfExists' =>true), $objUser);
	    $objForm->show();
	  	  $objForm->textField(array('maxlength' => '64', 'text' => Service_Translate::getText('Имя'), 'required' => 1), 'first_name');
	  	  $objForm->textField(array('maxlength' => '64', 'text' => Service_Translate::getText('Фамилия')), 'last_name');
	  	  $objForm->textField(array('maxlength' => '64', 'text' => Service_Translate::getText('Электронная почта'), 'required' => 1), 'e_mail');
	  	  $objForm->passwordField(array('maxlength' => '64', 'text' => Service_Translate::getText('Пароль'), 'required' => 1, 'help' => Service_Translate::getText('минимум 6 символов')), 'pass');
	  	  $objForm->passwordField(array('maxlength' => '64', 'text' => Service_Translate::getText('Подтверждение пароля'), 'required' => 1), 'pass_confirmation');
	  	  $objForm->kaptchaField(array('maxlength' => '10', 'text' => 'Enter code', 'required' => 0, 'value' => '' , 'class' => 'kaptchaInput'), 'kaptcha');
  		  $objForm->checkbox(array('label' => Service_Translate::getText('Я согласен с условиями пользовательского соглашения', $this->getLanguageUrl(W_ABSPATH . 'booking.htm'))), 'confirm');
			  $objForm->submitButton(array('value' => Service_Translate::getText('Отправить')), 'save');
			$objForm->close();
		echo '</div>';
	}

	/**
	 * Метод выводит форму восстановления пароля
	 *
	 * @param objUser - объект данных о пользователе
	 */
	public static function getRecoveryForm($objUser) {

		$objForm = new Form_ViewForm(array('action' => W_ABSPATH . 'auth/recovery/', 'id' => 'recoveryPageForm'), $objUser);
		$objForm->show(true);
      echo '<p>Email</p>';
      echo '<p>';
  		  $objForm->textField(array('maxlength' => '64', 'text' => 'Email', 'required' => 1), 'e_mail', true);
  		echo '</p>';

      //Код
  		echo '<div id="allkaptchaDiv">';
        echo '<div id="kaptchaEnterCode">';
      	  echo '<p>Enter code (<a class="reg_crypt_change ajax" onclick="javascript:document.getElementById(\'reg_crypt\').src=\'' .  W_ABSPATH . 'auth/kaptcha/\'+Math.round(Math.random(0)*1000)+1">Refresh image</a>)</p>';
    	    $objForm->textField(array('maxlength' => '10', 'text' => 'Enter code', 'required' => 0, 'value' => '' , 'class' => 'kaptchaInput'), 'kaptcha', true);
        echo '</div>';
     		echo '<div id="kaptchaImageDiv">';
      		  echo '<img src="' . W_ABSPATH . 'auth/kaptcha" class="kaptcha" id="reg_crypt" alt="" />';
     		echo '</div>';
     	echo '</div>';

			echo '<p>';
      $objForm->submitButton(array('value' => 'Recover'), 'recover', true);
			echo '</p>';
  	$objForm->close(true);

	}


	/**
	 * Метод выводит форму входа
	 *
	 * @param objUser - объект данных о пользователе
	 */
	public static function getLoginForm($objUser) {
		$objForm = new Form_ViewForm(array('action' => W_ABSPATH . 'auth/sign_in/', 'id' => 'loginPageForm'), $objUser);
		$objForm->show();

			echo '<p>Username or Email address</p>';
			echo '<p>';
	  	  $objForm->textField(array('maxlength' => '64', 'text' => 'Username or Email address', 'required' => 1, 'tabindex' => 1, 'class' => 'standardText bigSignIn'), 'login', true);
	  	echo '</p>';

      echo '<p>Password</p>';
      echo '<p>';
    	  $objForm->passwordField(array('maxlength' => '64', 'text' => 'Password', 'required' => 1, 'tabindex' => 2, 'class' => 'standardText bigSignIn'), 'pass', true);
    	echo '</p>';

    	echo '<p>';
	 		  $objForm->submitButton(array('value' => 'Sign in', 'class' => 'relTop15px', 'tabindex' => 4), 'enter', true);
	 		echo '</p>';

		$objForm->close();
	}
	
	/**
	 * Метод выводит форму входа
	 *
	 * @param objUser - объект данных о пользователе
	 */
	public function getSignInForm($objUser) {
		$objForm = new Form_ViewForm(array('id' => 'loginPageForm', 'viewFormType' => 'div'), $objUser);
		$objForm->show();
   	  $objForm->textField(array('text' => Service_Translate::getText('Электронная почта'), 'maxlength' => '64', 'tabindex' => 1, 'class' => 'standardText bigSignIn'), 'login_or_e_mail');
   	  $objForm->passwordField(array('text' => Service_Translate::getText('Пароль'), 'help' => '<a href="' . $this->getLanguageUrl(W_ABSPATH . 'auth/recovery/') . '">' . Service_Translate::getText('Забыли пароль') . '</a>', 'maxlength' => '64', 'tabindex' => 2, 'class' => 'standardText bigSignIn'), 'pass');
		  $objForm->submitButton(array('value' => Service_Translate::getText('Войти'), 'tabindex' => 4), 'enter');
		$objForm->close();

	}
}